Estoy trabajando en una aplicación react.js usando Create-react-app , en los encabezados de respuesta veo un encabezado x-powered-by de Express y quiero deshabilitar este campo de encabezado en particular. ¿Hay formas de lograr esto? En Next.js podemos deshabilitar este campo de encabezado agregando un código al archivo de configuración, ¿podemos lograr lo mismo en mi escenario?
React es un marco del lado del cliente y no se encarga de servir su aplicación a un navegador. Cualquier sistema que esté utilizando para alojar su aplicación es responsable de ese encabezado. Algunas de las plantillas de CRA usan webpack-dev-server para npm start que se basa en Express y es probablemente lo que muestra el encabezado. Como esto en realidad no es parte de su aplicación, no tiene mucho sentido apagarlo incluso si puede.
Sugeriría echar un vistazo a helmet , esto eliminará el encabezado x-powered-by y mejorará la seguridad al configurar otros encabezados http (ver docs. para más detalles)
const express = require("express"); const helmet = require("helmet"); const app = express(); app.use(helmet()); app.get("/test", (req, resp) => { resp.send('Testing with Helmet'); }) app.listen(3000); Verá cuando use el casco que el encabezado X-Powered-By: Express ya no está presente.
Si solo desea ocultar el encabezado x-powered-by , le sugiero que intente:
const express = require("express"); const helmet = require("helmet"); const app = express(); app.use(helmet.hidePoweredBy()); app.get("/test", (req, resp) => { resp.send('Testing with Helmet'); }) app.listen(3000);